home *** CD-ROM | disk | FTP | other *** search
- Path: grafix.xs4all.nl!john.hendrikx
- Date: Mon, 05 Feb 96 21:30:36 GMT+1
- Newsgroups: comp.sys.amiga.programmer
- Distribution: world
- Subject: Re: Amiga doesn`t need Planar!
- MIME-Version: 1.0
- Content-Type: text/plain; charset=iso-8859-1
- Content-Transfer-Encoding: 8bit
- From: john.hendrikx@grafix.xs4all.nl (John Hendrikx)
- Message-ID: <john.hendrikx.4bul@grafix.xs4all.nl>
- Organization: Grafix Attack BBS Holland
-
- In a message of 03 Feb 96 Michael Van Elst wrote to All:
-
- >> MVE> Then I'm much faster than chunky because I still hit memory by
- >> words.
-
- >> So can Chunky, using the same 'write-mask' hardware as Planar does.
-
- MVE> You mean that you now start to add extra hardware ? You start losing
- MVE> the cost advantages of using the CPU for rendering.
-
- Not really. I hardly call a write-mask 'hardware' anyway, its nothing compared
- to what a planar card needs to get slightly good results.
-
- >> Planar
- >> needs to read the extra mask though, Chunky can simply interpret color 0
- >> as a pixel not to be drawn.
-
- MVE> Chunky could do the same. Also, chosing a color is more limited
- MVE> compared to an arbitrary mask. If you want an arbitrary mask you have
- MVE> to read it. If you want a single color mask then this is one value to
- MVE> be remembered.
-
- So I suppose this is an disadvantage now? You could just as easily use a
- bitmask, it is simply almost never necessary.
-
- >> Not quite, only if the pixel needs to be drawn (assuming a fast
- >> CPU/Blitter where a test+branch would be fast compared to memory-speed).
-
- MVE> Which of course it isn't.
-
- Of course? What kind of platform do you have in mind anyway? I'm talking
- Pentium's, P6, 68060's, PPC's, etcetera... memory is slow for these fast
- processors. Even with caches they are slow as they can't hold the entire
- screen in the cache (IF gfx-mem is cached at all).
-
- >> with Chunky is much slower than planar, but atleast you don't lose tons
- >> of colors like Planar (the price you pay for the speed).
-
- MVE> Lose ? You mean you lose tons of colors with a 24bit display since you
- MVE> don't have an 48bit one ?
-
- If you want multiple layers with planar you LOSE colors. Ie, 8 bitplanes = 256
- colors. 2x 4 bitplanes = 32 colors.
-
- Not with Chunky, you can just compare each pixel plotted with a mask, slower of
- course (but I'm talking modern CPU's and Gfx cards here anyway), but you can
- use 256 colors.
-
- >> Then define what you mean with Multiple layers. For me it is having a
- >> cockpit + the 3d view on one screen, but in different bitplanes (ie, using
- >> dual playfield mode). With planar this implies that the cockpit and the
- >> 3d view are located in seperate planes. So a 8 bitplane display would
- >> have 2 views with only 16 colors. Chunky, with a bit more CPU effort,
- >> would retain 256 colors for both cockpit and 3d world.
-
- MVE> You actually mention it: "with a bit more CPU effort". You actually
- MVE> have to redraw the scene completely while you do not have to do
- MVE> anything for the planar display. Of course your CPU does that in zero
- MVE> time and doesn't need any extra memory accesses.
-
- Well listen to this, cockpit + 3d landscape, 8 bitplanes. Planar does it 'the
- easy way'. Ie, it uses 3 bitplanes for the cockpit (for a brilliant 8 colors),
- and 5 bitplanes for the 3d landscape (with a overwhelming 32 colors!!).
- Redrawing the 3d landscape in planar is equivalent to filling the entire screen
- with the 3d landscape, except that parts of it are covered by the cockpit (but
- they are still drawn).
-
- On the other hand, Chunky checks each pixel with the mask, before even STARTING
- any calculations to create the 3d landscape. As modern 3d landscapes are
- usually fractals or tmapped the whole system works on a pixel-basis anyway, so
- this extra mask check is low-overhead. Chunky doesn't draw unneeded pixels
- however, unlike planar. The cockpit is never damaged. It costs CPU power, but
- compared to the rest which is going on (ie, a 3d fractal landscape) it is
- nothing substantial.
-
- You still seem to think in terms of 68000 at 7 MHz doing Interceptor style
- games with plain 1 color polygons.
-
- >> Yes, you're right. It just takes so damn long before this kind of new
- >> hardware can be integrated into an existing platform. It gives a platform
- >> which requires hardware for these kinds of effects a serious setback as
- >> platform with Chunky gfx and a fast CPU have been using them for years
- >> already.
-
- MVE> Unfortunately there are limits to what a generic CPU can do and what
- MVE> it costs. That's why special texture mapping hardware becomes popular.
-
- For consoles yes, they don't have a 'big CPU' to handle this kind of stuff. It
- will come for the clones too, as soon as they find out that at 640x480 or
- 800x600 their Pentium/133 can't cut it anymore. But as for computer platforms
- a powerfull CPU is almost a requirement anyway (you can't add hardware for ALL
- CPU intensive jobs) you might as well take advantage of it. Actually the future
- might turn out a bit differently. P6's seem to be extremely good at
- multiprocessing. If it ever becomes cheap, then 'special hardware' may never
- become popular again. Just pop in more of those cheap CPU's, giving your
- system a speed up at EVERYTHING, not just TMapped polygons, or decoding MPEG
- streams, or whatever...
-
- In general I'm strongly against specific hardware for one specific goal, I
- think having the ability to have multiple general purpose CPU's in one system
- is a much better way to solve these kind of speed-problems. What use is that
- expensive DSP when it is just sitting there having nothing to do, or when apps
- simply not use it but use their own CPU based routines? What use is MPEG/JPEG
- hardware 99% of the time? Sure, I can't say the same thing for the blitter,
- but I can say it for polygon and tmapping hardware. This stuff is usually just
- sitting on your card doing nothing.
-
- Adding an extra CPU is more expensive, but it can do so much more. Certainly
- it will not be as fast as a real MPEG or JPEG decoder, but then again, what use
- is a JPEG decoder if you want to do texturemapping, or doing complex sound
- effects?
-
- >> Sure, they have to, otherwise it wouldn't ever get popular.
-
- MVE> And now that they are popular you lose again against special purpose
- MVE> hardware.
-
- Oh sure, but any platform having to rely on the 'coming' of such special
- purpose hardware is dead by then. Consoles are good examples of this, they
- never survive longer than a few years. Amiga just barely made it, and it still
- isn't entirely sure it will survive long enough for us to see a machine which
- is fast enough to do its own special fx.
-
- >> one to memory: plotting pixels. Some optimisations to plot multiple
- >> pixels at the time are possible, but it still comes down to modifying very
- >> few pixels at one time.
-
- MVE> That's like saying that a rectangular blit plots pixels because it
- MVE> writes pixels at a time.
-
- Do I really need to explain this in detail for you? Do you really don't see
- WHY a tmapped or shaded polygon is drawn one pixel at the time (as in multiple
- calculations are performed per pixel to give each pixel the correct look)?
-
- >> The difference is that Chunky hardware can be "upgraded" by getting a
- >> faster CPU.
-
- MVE> It suddenly gains bandwidth ? Come on.
-
- There is no need for a bandwidth increase. With a faster CPU you can just
- display more CPU intensive effects, the bandwidth could remain the same. In
- other words, with a 486/25 I could play 'DOOM' on my clone at a decent speed,
- now with my Pentium/90 I can play 'Magic Carpet' at a decent speed. The
- gfx-card is just as fast, still I gained a lot by upgrading my CPU.
-
- >> Our planar hardware doesn't benefit from faster CPU's.
-
- MVE> A same-technology chunky hardware wouldn't either.
-
- See above.
-
- Grtz John
-
- -----------------------------------------------------------------------
- John.Hendrikx@grafix.xs4all.nl TextDemo/FastView/Etc... development
- -----------------------------------------------------------------------
- -- Via Xenolink 1.981, XenolinkUUCP 1.1
-